package com.wgh.demo.ai.config;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Component
@ConfigurationProperties(prefix = "ai")
public class AiModelConfig {
    private String defaultModel;
    private Alibaba alibaba;
    private Deepseek deepseek;

    // Getters and Setters

    public String getDefaultModel() {
        return defaultModel;
    }

    public void setDefaultModel(String defaultModel) {
        this.defaultModel = defaultModel;
    }

    public Alibaba getAlibaba() {
        return alibaba;
    }

    public void setAlibaba(Alibaba alibaba) {
        this.alibaba = alibaba;
    }

    public Deepseek getDeepseek() {
        return deepseek;
    }

    public void setDeepseek(Deepseek deepseek) {
        this.deepseek = deepseek;
    }

    // Inner classes for nested properties

    public static class Alibaba {
        private String apiKey;
        private String endpoint;

        // Getters and Setters

        public String getApiKey() {
            return apiKey;
        }

        public void setApiKey(String apiKey) {
            this.apiKey = apiKey;
        }

        public String getEndpoint() {
            return endpoint;
        }

        public void setEndpoint(String endpoint) {
            this.endpoint = endpoint;
        }
    }

    public static class Deepseek {
        private String apiKey;
        private String endpoint;

        // Getters and Setters

        public String getApiKey() {
            return apiKey;
        }

        public void setApiKey(String apiKey) {
            this.apiKey = apiKey;
        }

        public String getEndpoint() {
            return endpoint;
        }

        public void setEndpoint(String endpoint) {
            this.endpoint = endpoint;
        }
    }
}